using System;
using XDQ.VAT.Permissions;
using XDQ.VAT.Classes.Dtos;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;

namespace XDQ.VAT.Classes
{
    public class AppClassAppService : CrudAppService<AppClass, AppClassDto, Guid, PagedAndSortedResultRequestDto, CreateUpdateAppClassDto, CreateUpdateAppClassDto>,
        IAppClassAppService
    {
        protected override string GetPolicyName { get; set; } = VATPermissions.AppClass.Default;
        protected override string GetListPolicyName { get; set; } = VATPermissions.AppClass.Default;
        protected override string CreatePolicyName { get; set; } = VATPermissions.AppClass.Create;
        protected override string UpdatePolicyName { get; set; } = VATPermissions.AppClass.Update;
        protected override string DeletePolicyName { get; set; } = VATPermissions.AppClass.Delete;

        private readonly IAppClassRepository _repository;
        
        public AppClassAppService(IAppClassRepository repository) : base(repository)
        {
            _repository = repository;
        }
    }
}
